#include <iostream>

using std::cout;
using std::endl;

class Base
{
public:
    Base()
    : _base(0)
    {
        cout << "Base()" << endl;
    }

    Base(long base)
    : _base(base)
    {
        cout << "Base(long)" << endl;
    }

private:
    long _base;

};

class Derived
: public Base
{
public:
    Derived(long derived )
    : Base(10)
    , _derived(derived)
    {
        cout << "Derived(long)" << endl;
    }

    void print() const
    {
        cout << "_derived : " << _derived << endl;
    }
private:
    long _derived;
};

int main(int argc, char **argv)
{
    Derived d(10);

    return 0;
}

